package com.example.x6.gpio_3288demo;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.TextView;

public class MainActivity extends Activity {

    /*
       IO 信息，下面的例子就是GPIO1_D0
    */
    private static int  numgroup = 3;
    private static char group = 'D';
    private static int num = 3;

    private final static String   TAG = "gpioctl";
    private GpioUtils gpioUtils;
//    private TextView disp;
//    private Button open;
//    private Button setdirection;
//    private CheckBox isIn;
//    private Button setvalue;
//    private CheckBox isLow;
//    private Button getvalue;
//    private Button close;

    private static boolean is_in = false;
    private static boolean is_low = false;
    private static int high = 1;
    private static int low = 0;


    private static int io = 0;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.activity_main);
        //init();

        gpioUtils = GpioUtils.getGpioUtils();
        io = gpioUtils.getGpioPin(numgroup,group,num);
        Log.e(TAG,String.valueOf(io));
        gpioUtils.setGpioDirection(io, 1);
        if(gpioUtils != null)
            gpioUtils.close();



            //tag: 调用者传递过来的数据



//        try{
//            SharedPreferences sharedPreferences = getSharedPreferences("xbbox", Context.MODE_PRIVATE);
//            String light = sharedPreferences.getString("light","0");
//            if(light.equals("0")){
//                SharedPreferences.Editor editor = getSharedPreferences("xbbox",MODE_PRIVATE).edit();
//                editor.putString("light","1");
//                gpioUtils = GpioUtils.getGpioUtils();
//                io = gpioUtils.getGpioPin(numgroup,group,num);
//                Log.e(TAG,String.valueOf(io));
//                gpioUtils.setGpioDirection(io, 0);
//                if(gpioUtils != null)
//                    gpioUtils.close();
//            }else{
//                SharedPreferences.Editor editor = getSharedPreferences("xbbox",MODE_PRIVATE).edit();
//                editor.putString("light","0");
//                gpioUtils = GpioUtils.getGpioUtils();
//                io = gpioUtils.getGpioPin(numgroup,group,num);
//                Log.e(TAG,String.valueOf(io));
//                gpioUtils.setGpioDirection(io, 1);
//                if(gpioUtils != null)
//                    gpioUtils.close();
//            }
//        }catch(Exception e)
//        {
//            SharedPreferences.Editor editor = getSharedPreferences("xbbox",MODE_PRIVATE).edit();
//            editor.putString("light","0");
//            gpioUtils = GpioUtils.getGpioUtils();
//            io = gpioUtils.getGpioPin(numgroup,group,num);
//            Log.e(TAG,String.valueOf(io));
//            gpioUtils.setGpioDirection(io, 1);
//            if(gpioUtils != null)
//                gpioUtils.close();
//        }


//        open.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                gpioUtils = GpioUtils.getGpioUtils();
//                io = gpioUtils.getGpioPin(numgroup,group,num);
//                Log.e(TAG,String.valueOf(io));
//            }
//        });
//        setdirection.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                if(is_in) {
//                    gpioUtils.setGpioDirection(io, 1);
//                }else{
//                    gpioUtils.setGpioDirection(io,0);
//                }
//            }
//        });
//
//        isIn.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                if(isIn.isChecked()){
//                    is_in = true;
//                }else{
//                    is_in = false;
//                }
//            }
//        });
//
//        isLow.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                if(isLow.isChecked()){
//                    is_low = true;
//                }else{
//                    is_low = false;
//                }
//            }
//        });
//
//        setvalue.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                if(!is_in){
//                    if(is_low){
//                        gpioUtils.gpioSetValue(io,low);
//                    }else{
//                        gpioUtils.gpioSetValue(io,high);
//                    }
//                }
//            }
//        });
//
//        getvalue.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                if(is_in){
//                    if(low == gpioUtils.gpioGetValue(io)){
//                        disp.setText( "电平状态(GETVALUE):"+"low");
//                    }else{
//                        disp.setText("电平状态(GETVALUE):"+"high");
//                    }
//                }
//            }
//        });
//        close.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                if(gpioUtils != null)
//                    gpioUtils.close();
//                MainActivity.this.finish();
//            }
//        });
    }



    private void init() {
//        disp = (TextView) findViewById(R.id.disp);
//        open = (Button) findViewById(R.id.open);
//        setdirection = (Button) findViewById(R.id.setdirection);
//        isIn = (CheckBox) findViewById(R.id.isIn);
//        setvalue = (Button) findViewById(R.id.setvalue);
//        isLow = (CheckBox) findViewById(R.id.isLow);
//        getvalue = (Button) findViewById(R.id.getvalue);
//        close = (Button) findViewById(R.id.close);
    }
}
